除了上一篇介紹的八種基本資料型態以外的全部都是參考資料型態(Reference Data Type)。
String 字串
用來表示一串字元資料,兩個雙引號 "" 之間的任何字元符號都是有效的字串。
String name = "Dani";
Class 類別
用於定義物件的屬性和行為。
public class MobilePhone {
// 屬性
String brand;
String model;
int storageCapacity;
}
Array 陣列
陣列用來儲存相同型別的值,裡面的每個元素都有一個索引 (index),從 0 開始。
int[] numbers = {1, 2, 3, 4, 5};
String[] names = {"Alice", "Bob", "Charlie"};
Enum 枚舉
通常被用來管理一組常數,例如:一周七天、衣服尺寸大中小等。
public enum Size {
SMALL, MEDIUM, LARGE
}
Interface 介面
interface 本身不執行任何實作,而是提供方法的規範,這些方法需要由 class 來實現。
以下範例,interface 定義了 Animal 這個介面,其中的方法 eat 和 sleep 都需要由實現這個介面的類別來具體實現。
public interface Animal {
// 定義Animal的method
void eat();
void sleep();
}
public class Dog implements Animal {
private String name;
public Dog(String name) {
this.name = name;
}
@Override
// 將interface定義的抽象method具體實現(此時定義該method究竟要做什麼行為)
public void eat() {
System.out.println(name + " 吃鮮食");
}
@Override
public void sleep() {
System.out.println(name + " 趴著睡");
}
}
在 Java 中,參考資料型態(Reference Data Types)是指那些變數並不直接儲存值,而是儲存指向實際物件的記憶體位址。與基本資料型態不同,參考資料型態可以用來表示更複雜的資料結構。除了上述所提到的 String、Class、Array、Enum、Interface,還有以下一些常見的參考資料型態:
Object 物件:所有類別的最上層父類別是 Object,每個物件都可以看作是 Object 的一個實例。Java 中所有類別都間接繼承自 Object。
List 和 Set 集合:List 是一種有序的集合,允許重複的元素,而 Set 則是一個不允許重複元素的無序集合。它們都屬於 Java 的集合框架,提供動態的資料結構。
Map 映射:Map 是一種鍵值對資料結構,允許透過鍵來快速查詢對應的值。HashMap 和 TreeMap 是常見的實作。